package com.medic.mapper.interf;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.medic.entity.group.pain.SikerInfo;

public interface SikerinfoMapper extends MapperInterface<SikerInfo> {

	/**
	 * 结束患者的评测，通过入组信息id
	 * 
	 * @param id
	 *            入组信息id
	 * @return 成功条数
	 * @throws Exception
	 */
	public int endEvalById(int id) throws Exception;

	/**
	 * 结束评测，通过患者id、组id
	 * 
	 * @param sikerId
	 *            患者id
	 * @param groupId
	 *            组id
	 * @return 成功条数
	 * @throws Exception
	 */
	public int endEvalByUser(@Param("sikerId") int sikerId, @Param("groupId") int groupId) throws Exception;

	/**
	 * 获取所有的入组信息
	 * 
	 * @return list集合
	 * @throws Exception
	 */
	public List<SikerInfo> selectAll() throws Exception;

	/**
	 * 更新持续疼评分大于四的次数
	 * 
	 * @param id
	 *            入组信息id
	 * @param coPain
	 *            次数
	 * @return 成功条数
	 * @throws Exception
	 */
	public int updateCoPain(@Param("id") int id, @Param("coPain") int coPain) throws Exception;

	/**
	 * 根据患者获取入组信息
	 * 
	 * @param userId
	 *            患者id
	 * @param groupId
	 *            组id
	 * @return 入组信息
	 * @throws Exception
	 */
	public SikerInfo selectByUser(@Param("sikerId")int userId, @Param("groupId")int groupId) throws Exception;

	/**
	 * 重启流程方法
	 * 
	 * @param sikerInfo
	 *            入组信息
	 * @return 成功条数
	 * @throws Exception
	 */
	public int restart(SikerInfo sikerInfo) throws Exception;
}
